home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c-part1 / 3369 < prev    next >
Encoding:
Text File  |  1996-08-05  |  1.9 KB  |  72 lines

  1. Path: homer23.u.washington.edu!quanger
  2. From: "Q. Sun" <quanger@u.washington.edu>
  3. Newsgroups: comp.lang.c
  4. Subject: Processor Fault!!??
  5. Date: Sun, 28 Jan 1996 01:13:18 -0800
  6. Organization: University of Washington
  7. Message-ID: <Pine.A32.3.91j.960128010358.43648E-100000@homer23.u.washington.edu>
  8. NNTP-Posting-Host: homer23.u.washington.edu
  9. Mime-Version: 1.0
  10. Content-Type: TEXT/PLAIN; charset=US-ASCII
  11. NNTP-Posting-User: quanger
  12.  
  13.  
  14. I was doing some examples off a text we are using and I am having 
  15. problems with it. The chapter is on arrays and I type in and ran the 
  16. programs in the text. When I ran it using Turbo C++ 3.1 it gave a nasty 
  17. General Protection Fault and stating it's the processor's fault! It also 
  18. said things like "0x211F:0x00BE Processor Fault." In Windows 95 it total 
  19. crashed! But in Windows for Workgroups 3.11, it recovered a 
  20. couple of runs until it eventually kicked me out to DOS.
  21.  
  22. I'm running a Pentium 120 with 16megs of RAM. Do I have one of those old 
  23. faulty Pentiums? My system is about one week new.
  24.  
  25. The code example is EXACTLY as follows:
  26.  
  27. /* Program to convert a postivie interger to another base */
  28. #include <stdio.h>
  29. main ()
  30. {
  31.     char base_digits[16] =    { '0', '1', '2', '3', '4', '5', '6', '7',
  32.                 '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
  33.     int converted_number[64];
  34.     int number_to_convert;
  35.     int next_digit, base, index = 0;
  36.  
  37.     /* get the number and the base */
  38.  
  39.     printf ("Number to be converted? ");
  40.     scanf  ("%ld", &number_to_convert);
  41.     printf ("Base? ");
  42.     scanf  ("%i", &base);
  43.  
  44.     /* convert to the indicated base */
  45.  
  46.     do
  47.     {
  48.         converted_number[index] = number_to_convert % base;
  49.         ++index;
  50.         number_to_convert = number_to_convert / base;
  51.     }
  52.     while ( number_to_convert != 0);
  53.  
  54.     /* display the results in reverse order */
  55.  
  56.     printf ("Converted number = ");
  57.  
  58.     for ( index; index >= 0; --index )
  59.     {
  60.         next_digit = converted_number[index];
  61.         printf("%c", base_digits[next_digit]);
  62.     }
  63.  
  64.     printf ("\n");
  65.  
  66.  
  67. /* Code ends here */
  68.  
  69.  
  70.  
  71.